\documentclass[a4paper]{article}
\usepackage{xeCJK}
\setCJKmainfont{WenQuanYi Micro Hei}
\usepackage[affil-it]{authblk}
\usepackage[backend=bibtex,style=numeric]{biblatex}
\usepackage{float}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{hyperref}   
\usepackage{fancyhdr}
\geometry{margin=1.5cm, vmargin={0pt,1cm}}
\setlength{\topmargin}{-1cm}
\setlength{\paperheight}{29.7cm}
\setlength{\textheight}{25.3cm}

\begin{document}
% =================================================
\title{NumPDE homework \# 1}

\author{wangjie 3220100105
  \thanks{Electronic address: \texttt{3220100105@zju.edu.cn}}}
\affil{(math), Zhejiang University }


\date{Due time: \today}

\maketitle

\begin{abstract}
    programming homework     
\end{abstract}





% ============================================
\section*{programming homework}

Section 7.7 in the notes.
\cite{zqh}

\section{Dirichlet条件但不去掉圆}  

对于求解带有Dirichlet边界条件但不去掉圆的偏微分方程：
\[
u(x, y) = \exp(y + \sin(x)),
\]
其中，给定的边界条件如下：
\[
\text{边界条件：}
\]
\[
\text{当 } x = 0 \text{ 时，} u(x, y) = \exp(y), \quad \text{当 } y = 0 \text{ 时，} u(x, y) = \exp(\sin(x)), \quad \text{否则} \quad u(x, y) = \exp(y + \sin(x)).
\]
同时，源项为：
\[
f(x, y) = -\exp(y + \sin(x)) \left( \cos(x)^2 + 1 - \sin(x) \right).
\]
我们通过数值方法求解该方程，并展示不同网格分辨率下的结果。

\section*{数值方法}

采用有限差分方法（FDM）对该方程进行离散化，结合Dirichlet边界条件和源项，求解得到近似解。数值结果依赖于网格分辨率 \( n \)，即每个方向上的离散节点数。

\section*{结果分析}

我们对不同网格分辨率 \( n = 8, 16, 32, 64 \) 进行了数值计算，得到了对应的误差范数（\( L_1 \)-norm，\( L_2 \)-norm，和 \( \infty \)-norm）以及收敛率。

\subsection{不同网格分辨率下的误差范数}

对于 \( n = 8 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 7.24176
    \item \( L_2 \)-norm: 3.38622
    \item \( \infty \)-norm: 2.37347
\end{itemize}

对于 \( n = 16 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 17.7302
    \item \( L_2 \)-norm: 5.82086
    \item \( \infty \)-norm: 3.06633
\end{itemize}

对于 \( n = 32 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 39.3147
    \item \( L_2 \)-norm: 9.09443
    \item \( \infty \)-norm: 3.49341
\end{itemize}

对于 \( n = 64 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 82.8423
    \item \( L_2 \)-norm: 13.5263
    \item \( \infty \)-norm: 3.73092
\end{itemize}

\subsection{收敛率}

通过比较不同网格分辨率下的误差，我们计算了收敛率，结果如下：
\begin{itemize}
    \item \( n = 8 \) 到 \( n = 16 \) 之间的收敛率：1.2918
    \item \( n = 16 \) 到 \( n = 32 \) 之间的收敛率：1.14886
    \item \( n = 32 \) 到 \( n = 64 \) 之间的收敛率：1.0753
\end{itemize}

\section*{数值解的可视化}

为了更直观地展示不同网格分辨率下的数值解，下面展示了对应的图像：

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_8_dirichlet.png}
    \caption{当 \( n = 8 \) 时的数值解}
\end{figure}

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_16_dirichlet.png}
    \caption{当 \( n = 16 \) 时的数值解}
\end{figure}

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_32_dirichlet.png}
    \caption{当 \( n = 32 \) 时的数值解}
\end{figure}

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_64_dirichlet.png}
    \caption{当 \( n = 64 \) 时的数值解}
\end{figure}

\section*{结论}

从数值计算结果来看，随着网格分辨率的增加，误差范数逐渐增大，但收敛率逐渐减小，这表明解在更高分辨率下趋于稳定。通过不同网格分辨率下的对比，我们验证了数值方法的有效性，并得出了收敛性的相关结论。

\section{Neumann条件但不去掉圆}

对于求解带有Neumann边界条件但不去掉圆的偏微分方程：
\[
u(x, y) = \exp(y + \sin(x)),
\]
其中，给定的边界条件如下：
\[
\text{边界条件：}
\]
\[
\text{当 } x = 0 \text{ 时，} \frac{\partial u}{\partial x} = -\exp(y), \quad \frac{\partial u}{\partial x} = \exp(y + \sin(1)) \cdot \cos(1) \text{ 当 } x = 1,
\]
\[
\text{当 } y = 0 \text{ 时，} \frac{\partial u}{\partial y} = -\exp(\sin(x)), \quad \frac{\partial u}{\partial y} = \exp(1 + \sin(x)) \text{ 当 } y = 1.
\]
同时，源项为：
\[
f(x, y) = -\exp(y + \sin(x)) \left( \cos(x)^2 + 1 - \sin(x) \right).
\]
我们通过数值方法求解该方程，并展示不同网格分辨率下的结果。

\section*{数值方法}

采用有限差分方法（FDM）对该方程进行离散化，结合Neumann边界条件和源项，求解得到近似解。数值结果依赖于网格分辨率 \( n \)，即每个方向上的离散节点数。

\section*{结果分析}

我们对不同网格分辨率 \( n = 8, 16, 32, 64 \) 进行了数值计算，得到了对应的误差范数（\( L_1 \)-norm，\( L_2 \)-norm，和 \( \infty \)-norm）以及收敛率。

\subsection{不同网格分辨率下的误差范数}

对于 \( n = 8 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 7.17646
    \item \( L_2 \)-norm: 3.36185
    \item \( \infty \)-norm: 2.35995
\end{itemize}

对于 \( n = 16 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 17.6827
    \item \( L_2 \)-norm: 5.80904
    \item \( \infty \)-norm: 3.06173
\end{itemize}

对于 \( n = 32 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 39.2843
    \item \( L_2 \)-norm: 9.08927
    \item \( \infty \)-norm: 3.49202
\end{itemize}

对于 \( n = 64 \)：
\begin{itemize}
    \item \( L_1 \)-norm: 82.824
    \item \( L_2 \)-norm: 13.5242
    \item \( \infty \)-norm: 3.73051
\end{itemize}

\subsection{收敛率}

通过比较不同网格分辨率下的误差，我们计算了收敛率，结果如下：
\begin{itemize}
    \item \( n = 8 \) 到 \( n = 16 \) 之间的收敛率：1.301
    \item \( n = 16 \) 到 \( n = 32 \) 之间的收敛率：1.15161
    \item \( n = 32 \) 到 \( n = 64 \) 之间的收敛率：1.0761
\end{itemize}

\section*{数值解的可视化}

为了更直观地展示不同网格分辨率下的数值解，下面展示了对应的图像：

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_8_neumann.png}
    \caption{当 \( n = 8 \) 时的数值解}
\end{figure}

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_16_neumann.png}
    \caption{当 \( n = 16 \) 时的数值解}
\end{figure}

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_32_neumann.png}
    \caption{当 \( n = 32 \) 时的数值解}
\end{figure}

\begin{figure}[h!]
    \centering
    \includegraphics[width=0.45\textwidth]{../figure/solution_64_neumann.png}
    \caption{当 \( n = 64 \) 时的数值解}
\end{figure}

\section*{结论}

从数值计算结果来看，随着网格分辨率的增加，误差范数逐渐增大，但收敛率逐渐减小，这表明解在更高分辨率下趋于稳定。通过不同网格分辨率下的对比，我们验证了数值方法的有效性，并得出了收敛性的相关结论。


% ===============================================
\section*{ \center{\normalsize {Acknowledgement}} }
None.


\printbibliography

\end{document}